Fix missing validation when binding memory to buffers with the shader_device_address
usage
#2031
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Required for #1997.
Adds support for passing the
device_address
flag when allocatingDeviceMemory
, which is required when binding memory to a buffer with theshader_device_address
usage in theVK_KHR_buffer_device_address
extension (and core 1.2 which it was promoted to), but not its predecessorVK_EXT_buffer_device_address
. Fixes the bug whereUnsafeBuffer::bind_memory
wasn't validating if the memory is allocated with thedevice_address
flag, and also fixes the wrong function pointer inBufferAccess::raw_device_address
when not using the outdatedVK_EXT_buffer_device_address
extension.Changelog: